API

Website audit

You are reading the Data API docs

Base URL: api.seranking.com

Data API and Project API keys are not interchangeable — use the correct one to avoid authentication errors.

Data apikey example:
80cfee7d-xxxx-xxxx-xxxx-fc8500816bb3
(UUID format)
Project apikey example:
253a73adxxxxxxxxxxxxxx340aa0a939
(40-char hex)

API keys are available in your account. For any questions or 401 errors, email [email protected] for support.

The Website Audit API provides a comprehensive suite of tools to programmatically manage the full lifecycle of your technical SEO audits. These endpoints allow you to launch new crawls, monitor their progress, and retrieve detailed reports and page-level data.

Create an Audit

These endpoints launch a new website audit. Use the Standard endpoint for most websites, and the Advanced endpoint for sites that rely heavily on JavaScript to render content, such as Single-Page Applications (SPAs).

⚠️ Cost Information: Be aware of the cost difference before launching an audit.

  • Standard Audits cost 2 credits per crawled page.
  • Advanced Audits cost 20 credits per crawled page.

Create Standard Audit

Launches a standard audit that crawls the HTML of a website. This is suitable for most static and server-side rendered sites.

Copy
POST /v1/site-audit/audits/standard

POST Request

Copy
curl --location 'https://api.seranking.com/v1/site-audit/audits/standard' \
--header 'Content-Type: application/json' \
--header 'Authorization: Token YOUR_API_KEY' \
--data '{
    "domain": "example.com",
    "title": "Standard Audit for Example.com",
    "settings": {
        "max_pages": 10000,
        "source_subdomain": 0
    }
}'

Create Advanced Audit

Launches an advanced audit that renders JavaScript before analyzing the page. Use this for single-page applications (SPAs) or any site where content is loaded dynamically.

Copy
POST /v1/site-audit/audits/advanced

POST Request

Copy
curl --location 'https://api.seranking.com/v1/site-audit/audits/advanced' \
--header 'Content-Type: application/json' \
--header 'Authorization: Token YOUR_API_KEY' \
--data '{
    "domain": "spa-example.com",
    "title": "Advanced Audit for SPA-Example.com",
    "settings": {
        "max_pages": 100,
        "source_subdomain": 1
    }
}'

Request Parameters

ParameterTypeRequiredDefaultDescription
domainstringyesThe domain to be audited. Example: domain.com
titlestringnodomainA custom title for the audit report. Max 300 characters.
settingsobjectnoAn object containing specific audit settings. Only include parameters you want to override. See the Audit Settings table below.

Audit Settings

The settings object allows for detailed customization of the website crawl. All parameters are optional and apply to both audit types.

NameDescriptionPossible ValuesDefault Value
source_siteScan all pages by following internal links from the homepage. If 0, scans only from sitemap or a provided list.1 (yes), 0 (no)1
source_sitemapScan the sitemap.xml file.1 (yes), 0 (no)1
source_subdomainScan subdomains. If 0, subdomain links are treated as external.1 (yes), 0 (no)0
source_fileUse a custom list of pages for the audit.1 (yes), 0 (no)0
check_robotsFollow the directives in the robots.txt file.1 (yes), 0 (no)1
ignore_paramsIgnore URL parameters.0 (none), 1 (all), 2 (custom list)0
custom_paramsA list of URL parameters to ignore when ignore_params is 2.Comma-separated stringutm_source, utm_medium, …
ignore_noindexIgnore pages with a noindex tag.1 (yes), 0 (no)0
ignore_nofollowIgnore links with a nofollow attribute.1 (yes), 0 (no)0
user_agentThe User-Agent header to use for the crawl.0-130 (SE Ranking bot)
loginLogin for Basic HTTP Authentication.Stringnull
passwordPassword for Basic HTTP Authentication.Stringnull
max_pagesMaximum number of pages to crawl.1-3000001000
max_depthMaximum crawl depth.1-10010
max_reqMaximum number of requests per second.1-500500
max_redirectsMaximum number of redirects to follow.1-505
min_title_lenMinimum length for the <title> tag.1-1000020
max_title_lenMaximum length for the <title> tag.1-1000065
min_description_lenMinimum length for the meta description.1-100001
max_description_lenMaximum length for the meta description.1-10000158
max_sizeMaximum page size in kilobytes.1-1000003000
min_wordsMinimum word count per page.1-10000250
max_h1_lenMaximum length for <h1> tags.1-10000100
max_h2_lenMaximum length for <h2> tags.1-10000100
allowOnly crawl URLs that start with this path.Stringnull
disallowDo not crawl URLs that start with this path.Stringnull
hideHide URLs and resources that start with this path from the report.Stringnull

Response Parameters

If successful, the server returns a JSON object containing the unique ID for the newly created audit.

ParameterData TypeDescriptionExample
idintegerThe unique identifier for the audit report.700237036

Example Request

Copy
curl --location 'https://api.seranking.com/v1/site-audit/audits/standard' \
--header 'Content-Type: application/json' \
--header 'Authorization: Token YOUR_API_KEY' \
--data '{
    "domain": "example.com",
    "title": "Example Audit Title",
    "settings": {
        "source_site": 1,
        "source_sitemap": 1,
        "source_subdomain": 0,
        "source_file": 0,
        "check_robots": 1,
        "ignore_params": 0,
        "custom_params": "utm_source,utm_medium,utm_term,utm_content,utm_campaign",
        "ignore_noindex": 0,
        "ignore_nofollow": 0,
        "user_agent": 0,
        "login": "",
        "password": "",
        "max_pages": 10000,
        "max_depth": 10,
        "max_req": 500,
        "max_redirects": 5,
        "min_title_len": 20,
        "max_title_len": 65,
        "min_description_len": 1,
        "max_description_len": 158,
        "max_size": 3000,
        "min_words": 250,
        "max_h1_len": 100,
        "max_h2_len": 100
    }
}'

Example Response

A successful request returns a JSON object containing the unique ID of the created audit.

Copy
{
   "id": 700237036
}

List audits

This endpoint retrieves a list of all website audits associated with your account, providing key details and statistics for each.

GET Request

The request should be made as a GET request. You can use query parameters to paginate the results.

Copy
curl --location 'https://api.seranking.com/v1/site-audit/audits?limit=10&offset=0&search=booking.com&date_start=2025-07-01&date_end=2025-07-31' \
--header 'Authorization: Token YOUR_API_KEY'

Request Parameters

ParameterTypeRequiredDefaultDescription
limitIntegerNo100The number of audits to return in the list.
offsetIntegerNo0The starting position (offset) for the list of audits.
searchStringNoFilters the list by a search term matching the audit’s title or URL.
date_startStringNoThe start date for filtering audits (YYYY-MM-DD).
date_endStringNoThe end date for filtering audits (YYYY-MM-DD).

Response Parameters

If successful, the server returns a JSON object containing the total count of audits and an array of audit objects.

ParameterData TypeDescription
totalIntegerThe total number of audits matching the filter criteria.
itemsArrayAn array of objects, each representing a website audit.

Each object in the items array has the following structure:

ParameterData TypeDescriptionExample
idIntegerThe unique identifier for the audit report.700138456
urlStringThe URL of the audited website.http://booking.com
titleStringThe title of the audit report.booking.com
last_updateStringThe date the audit was last updated (YYYY-MM-DD).2025-07-08
statusStringThe current status of the audit (e.g., finished, processing).finished
statsObjectAn object containing the latest statistics for the audit (score, errors, warnings, notices, crawled).{
“score”: 69,
“errors”: 2303,
“warnings”: 3710,
“notices”: 10875,
“crawled”: 1830
}
prev_statsObjectAn object containing statistics from the previous audit run. Can be null if no prior data exists.null

Example Request

Copy
curl --location 'https://api.seranking.com/v1/site-audit/audits?limit=4&offset=0&search=booking.com&date_start=2025-07-01&date_end=2025-07-31' \
--header 'Authorization: Token YOUR_API_KEY'

Example Response

A successful request returns a JSON object containing the unique ID of the created audit.

Copy
{
    "items": [
        {
            "id": 700138456,
            "group_id": 0,
            "url": "http://booking.com",
            "title": "booking.com",
            "has_project": true,
            "site_id": 10113599,
            "last_update": "2025-07-08",
            "status": "finished",
            "error": null,
            "error_params": null,
            "stats": {
                "score": 69,
                "errors": 2303,
                "warnings": 3710,
                "notices": 10875,
                "crawled": 1830
            },
            "prev_stats": null,
            "version": "2.0",
            "owner_account_id": 4242308,
            "is_new": 1
        }
    ],
    "total": 1
}

Get Audit Status

This endpoint allows you to check the real-time status of a specific website audit, whether it’s queued, currently processing, or already finished. This is useful for monitoring the progress of a crawl before fetching the full report.

GET Request

The request should be made as a GET request with the audit_id included in the query string.

Copy
curl --location 'https://api.seranking.com/v1/site-audit/audits/status?audit_id=700183831' \
--header 'Authorization: Token YOUR_API_KEY'

Request Parameters

ParameterTypeRequiredDefaultDescription
audit_idIntegerYesThe unique identifier of the audit to check.

Response Parameters

If successful, the server returns a JSON object containing the current status and key metrics of the audit.

ParameterData TypeDescription
statusStringThe current status of the audit. Possible values: queued, processing, finished, cancelled, expired.
total_pagesIntegerThe number of pages crawled so far.
total_errorsIntegerThe current count of critical issues found.
total_warningsIntegerThe current count of warnings found.
total_passedIntegerThe current count of checks that have passed.
start_timeStringThe timestamp for when the audit began.
audit_timeStringThe timestamp for when the audit was completed. This will be present if the status is finished.

Example Request

Copy
curl --location 'https://api.seranking.com/v1/site-audit/audits/status?audit_id=700183831' \
--header 'Authorization: Token YOUR_API_KEY'

Example Response

Copy
{
    "total_pages": 1009,
    "total_warnings": 979,
    "total_errors": 346,
    "total_passed": 77,
    "status": "finished",
    "start_time": "2025-07-29 11:06:23",
    "audit_time": "2025-07-29 11:19:33"
}

Get audit report

This endpoint retrieves the full, detailed report for a completed website audit. The report includes the site’s overall health score, domain properties, and a section-by-section breakdown of all checks performed, categorized by issue type (errors, warnings, notices).

GET Request

The request should be made as a GET request with the audit_id included in the query string.

Copy
curl --location 'https://api.seranking.com/v1/site-audit/audits/report?audit_id=700183831' \
--header 'Authorization: Token YOUR_API_KEY'

Request Parameters

ParameterTypeRequiredDefaultDescription
audit_idIntegerYesThe unique identifier of the audit for which to retrieve the report.

Response Parameters

If successful, the server returns a JSON object containing the complete audit report.

ParameterData TypeDescription
is_finishedBooleanIndicates if the audit has completed. The report is only available if this is true.
score_percentIntegerThe overall health score of the website, from 0 to 100.
total_pagesIntegerThe total number of pages crawled during the audit.
total_errorsIntegerThe total count of critical issues found.
total_warningsIntegerThe total count of warnings found.
total_noticesIntegerThe total count of minor issues or notices.
total_passedIntegerThe total count of checks that passed successfully.
audit_timeStringThe timestamp for when the audit was completed.
domain_propsObjectAn object containing general data about the audited domain. See details below.
sectionsArrayAn array of objects, where each object represents a category of audit checks (e.g., Security, Content).

domain_props Object

ParameterData TypeDescription
expdateStringThe expiration date of the domain registration.
backlinksStringThe total number of backlinks pointing to the domain.
index_googleStringThe number of pages indexed in Google.

sections Array Each object in the sections array contains a uid (unique ID), a name for the category, and a props object. The props object lists all the individual checks for that category. Each check includes:

  • code: A unique identifier for the check (e.g., no_https).
  • status: The result of the check (error, warning, notice, passed).
  • name: A human-readable name for the check.
  • value: The number of pages affected by this issue.

Example Request

Copy
curl --location 'https://api.seranking.com/v1/site-audit/audits/report?audit_id=700183831' \
--header 'Authorization: Token YOUR_API_KEY'

Example Response

Copy
{
    "total_pages": 1009,
    "total_warnings": 979,
    "total_errors": 346,
    "total_passed": 77,
    "total_notices": 3915,
    "is_finished": true,
    "domain_props": {
        "dt": 44,
        "domain": "www.vitality.co.uk",
        "domains": "3401",
        "expdate": "2025-08-30",
        "updated": "2025-07-29 12:07:28",
        "backlinks": "212249",
        "index_bing": 15500,
        "all_checked": true,
        "index_yahoo": 15500,
        "index_google": "1380"
    },
    "sections": [
        {
            "uid": "security_v2",
            "name": "Security",
            "props": {
                "no_https": {
                    "code": "no_https",
                    "status": "error",
                    "name": "No HTTPS encryption",
                    "value": 0
                },
                "mixed_content": {
                    "code": "mixed_content",
                    "status": "error",
                    "name": "Mixed content",
                    "value": 0
                }
            }
        },
        {
            "uid": "crawling_v2",
            "name": "Crawling & Indexing",
            "props": {
                "http4xx": {
                    "code": "http4xx",
                    "status": "error",
                    "name": "4XX HTTP Status Codes",
                    "value": 28
                },
                "blocked_by_noindex": {
                    "code": "blocked_by_noindex",
                    "status": "notice",
                    "name": "Blocked by noindex",
                    "value": 34
                }
            }
        }
    ],
    "score_percent": 80,
    "audit_time": "2025-07-29 11:19:33",
    "version": "2.0"
}

Get all crawled pages

This endpoint returns a paginated list of all URLs found during an audit, providing a complete sitemap as discovered by the crawler. This includes pages with and without detected issues.

GET Request

The request should be made as a GET request with all parameters included in the query string.

Copy
curl --location 'https://api.seranking.com/v1/site-audit/audits/pages?audit_id=700183831&limit=10&offset=0' \
--header 'Authorization: Token YOUR_API_KEY'

Request Parameters

ParameterTypeRequiredDefaultDescription
audit_idIntegerYesThe unique identifier of the audit report.
limitIntegerNo100The number of pages to return in the list.
offsetIntegerNo0The starting position for the list of pages.

Response Parameters

If successful, the server returns a JSON object containing the total count of crawled pages and an array of page objects.

ParameterData TypeDescription
itemsArrayAn array of objects, each representing a crawled page with its detailed metrics.
totalIntegerThe total number of pages crawled in the audit.

Each object in the items array has the following structure:

ParameterData TypeDescriptionExample
idStringThe unique internal identifier for the page.“50958380”
urlStringThe full URL of the crawled page.“https://www.vitality.co.uk/”
statusStringThe HTTP status code returned by the page.“200”
depthStringThe crawl depth of the page (distance from the start page).“1”
load_msStringThe time it took for the page to load, in milliseconds.“1373”
titleStringThe content of the <title> tag.“Vitality Insurance
descriptionStringThe content of the meta description tag.“Vitality is a leading UK insurer…”
h1StringThe content of the first <h1> tag.“Live longer with Vitality insurance”
words_countStringThe total number of words found on the page.“1621”
issuesStringThe total count of issues found on the page.“2”
errorsStringThe total count of critical errors on the page.“0”
warningsStringThe total count of warnings on the page.“0”
noticesStringThe total count of notices on the page.“2”
inlinksStringThe number of internal links pointing to this page.“922”
outlinks_internalStringThe number of internal links found on this page.“83”
outlinks_externalStringThe number of external links found on this page.“12”
canonical_urlStringThe canonical URL specified for the page.“https://www.vitality.co.uk/”
indexable_statusStringThe indexability status of the page.“ok”

Example Request

Copy
curl --location 'https://api.seranking.com/v1/site-audit/audits/pages?audit_id=700183831&limit=2&offset=0' \
--header 'Authorization: Token YOUR_API_KEY'

Example Response

A successful request returns a JSON object containing a list of page objects with their associated data.

Copy
{
"total": 1009,
"items": [
{
"id": "50958380",
"url": "[https://www.vitality.co.uk/](https://www.vitality.co.uk/)",
"url_len": "27",
"type": "doc",
"url_protocol": "https",
"sitemap": "0",
"status": "200",
"size": "156676",
"depth": "1",
"noindex": "0",
"first_ms": "35",
"load_ms": "1373",
"robots": "index, follow",
"nofollow": "0",
"xrobots": null,
"title_len": "53",
"description_len": "139",
"chars": "153843",
"h1_len": "35",
"h2_len": "16",
"html_ratio": "40",
"blocked_robots": "0",
"img": "21",
"hreflang": null,
"hreflang_link": null,
"refresh_time": null,
"meta_refresh": "0",
"redirect_url": null,
"canonical_url": "[https://www.vitality.co.uk/](https://www.vitality.co.uk/)",
"single_h1": "1",
"single_h2": "0",
"h3_count": "9",
"h4_count": "33",
"h5_count": "0",
"h6_count": "0",
"words_count": "1621",
"total_links": "230",
"mixed_count": null,
"mixed": null,
"last_modified": null,
"content_hash": "9d657683ebd385ba700d4301f1ef854f",
"title": "Vitality Insurance | Award-Winning Insurance Provider",
"description": "Vitality is a leading UK insurer offering health and life insurance. Get your quote today and unlock discounts and rewards from top brands.",
"h1": "Live longer with Vitality insurance",
"h2": "Health insurance",
"issues": "2",
"errors": "0",
"warnings": "0",
"notices": "2",
"refpages": "921",
"inlinks": "922",
"inlinks_nofollow": "0",
"inlinks_follow": "922",
"redirect_links": "4",
"redirect_count": "5",
"img_size": "700322",
"css_size": "443163",
"js_size": "543728",
"outlinks_external": "12",
"outlinks_internal": "83",
"title_duplicate": "0",
"description_duplicate": "0",
"h1_duplicate": "0",
"amp": "0",
"indexable": "1",
"indexable_status": "ok",
"traffic_forecast": "10716",
"num_keywords": "48369",
"recheck_status": null,
"time_check": "2025-07-29 11:06:30"
},
{
"id": "50958398",
"url": "[https://www.vitality.co.uk/health-insurance/](https://www.vitality.co.uk/health-insurance/)",
"url_len": "44",
"type": "doc",
"url_protocol": "https",
"sitemap": "1",
"status": "200",
"size": "181179",
"depth": "2",
"noindex": "0",
"first_ms": "0",
"load_ms": "496",
"robots": "index, follow",
"nofollow": "0",
"xrobots": null,
"title_len": "52",
"description_len": "121",
"chars": "178088",
"h1_len": "26",
"h2_len": "33",
"html_ratio": "42",
"blocked_robots": "0",
"img": "27",
"hreflang": null,
"hreflang_link": null,
"refresh_time": null,
"meta_refresh": "0",
"redirect_url": null,
"canonical_url": "[https://www.vitality.co.uk/health-insurance/](https://www.vitality.co.uk/health-insurance/)",
"single_h1": "1",
"single_h2": "0",
"h3_count": "20",
"h4_count": "39",
"h5_count": "0",
"h6_count": "0",
"words_count": "3032",
"total_links": "239",
"mixed_count": null,
"mixed": null,
"last_modified": null,
"content_hash": "5b6d17dbcb03b2405450db10f86dd43a",
"title": "Health Insurance in the UK | Get Private Health Care",
"description": "Get top-rated health insurance in the UK, with real benefits and incentives from your healthcare plan. Get a quote today.",
"h1": "Health insurance in the UK",
"h2": "What is private health insurance?",
"issues": "3",
"errors": "0",
"warnings": "1",
"notices": "2",
"refpages": "896",
"inlinks": "898",
"inlinks_nofollow": "0",
"inlinks_follow": "898",
"redirect_links": "0",
"redirect_count": "4",
"img_size": "2316745",
"css_size": "443163",
"js_size": "543728",
"outlinks_external": "12",
"outlinks_internal": "86",
"title_duplicate": "0",
"description_duplicate": "0",
"h1_duplicate": "0",
"amp": "0",
"indexable": "1",
"indexable_status": "ok",
"traffic_forecast": "4928",
"num_keywords": "13021",
"recheck_status": null,
"time_check": "2025-07-29 11:06:45"
}
]
}

Get audit pages by issue

This endpoint retrieves a paginated list of all URLs affected by a specific issue within a given audit. You can identify the code for an issue by first fetching the main audit report.

GET Request

The request should be made as a GET request with all parameters included in the query string.

Copy
curl --location 'https://api.seranking.com/v1/site-audit/audits/issue-pages?code=title_duplicate&audit_id=700183831&limit=10&offset=0' \
--header 'Authorization: Token YOUR_API_KEY'

Request Parameters

ParameterTypeRequiredDefaultDescription
audit_idIntegerYesThe unique identifier of the audit report.
codeStringYesThe unique code for the issue (e.g., title_duplicate).
limitIntegerNo100The number of URLs to return in the list.
offsetIntegerNo0The starting position (offset) for the list of URLs.

Response Parameters

If successful, the server returns a JSON object containing the total count of affected URLs and an array of the URLs themselves.

ParameterData TypeDescription
total_urlsIntegerThe total number of URLs affected by this specific issue.
urlsArrayAn array of strings, where each string is a URL affected by the issue.
urls_typeStringDescribes the format of the urls array. For this endpoint, it is typically simple_urls_array.

Example Request

Copy
curl --location 'https://api.seranking.com/v1/site-audit/audits/issue-pages?code=title_duplicate&audit_id=700183831&limit=10&offset=0' \
--header 'Authorization: Token YOUR_API_KEY' 

Example Response

A successful request returns a JSON object containing the unique ID of the created audit.

Copy
{
"total_urls": 143,
"urls": [
"https://www.vitality.co.uk/life-insurance/accident-and-fracture-cover/",
"https://www.vitality.co.uk/business/health-insurance/callback/",
"https://www.vitality.co.uk/media/vitality-employee-challenges-programme-goes-live/",
"https://www.vitality.co.uk/media/bbq-blunders-the-bbq-foods-fooling-brits/",
"https://www.vitality.co.uk/media/vitality-launches-cpd-accredited-sustainability-webinar-series-for-advisers/",
"https://www.vitality.co.uk/media/vitality-welcomes-new-partners-to-the-programme/",
"https://www.vitality.co.uk/media/sneezing-season-slams-first-time-sufferers/",
"https://www.vitality.co.uk/media/vitality-calls-for-greater-focus-on-burnout/",
"https://www.vitality.co.uk/media/vitality-research-reveals-gaps-in-employee-awareness-of-sick-leave-policies/",
"https://www.vitality.co.uk/media/vitality-parkrun-celebrate-record-breaking/"
],
"urls_type": "simple_urls_array"
}

Get all issues for a specific URL

This endpoint retrieves a detailed list of all issues (errors, warnings, and notices) that were found on a single, specific page within an audit. The response also includes the full page_data object for complete context.

GET Request

The request should be made as a GET request with all parameters included in the query string.

Copy
curl --location 'https://api.seranking.com/v1/site-audit/audits/issues?audit_id=700183831&url_id=50958380' \
--header 'Authorization: Token YOUR_API_KEY'

Request Parameters

ParameterTypeRequiredDefaultDescription
audit_idIntegerYesThe unique identifier of the audit.
url_idIntegerYesThe unique identifier of the page, obtained from the pages endpoint.

Response Parameters

If successful, the server returns a JSON object containing the page’s URL, its full data object, and an array of all issues found on that page.

ParameterData TypeDescription
urlStringThe full URL of the page being queried.
page_dataObjectA snapshot of all metrics and metadata collected for the page during the crawl.
issuesArrayAn array of objects, where each object is a specific issue (error, warning, or notice) found on the page.

page_data Object

This object provides a full report card of the page’s characteristics. Key fields include:

  • On-Page SEO: title, description, h1, words, robots, canonical
  • Technical Metrics: js_size, css_size, img_size, cache, encoding
  • Link Data: inlinks, total_links, redirect_links
  • Issue Summary: issues_count, errors_count, warnings_count, notices_count

issues Array

Each object in the issues array represents a specific problem and has the following structure:

ParameterData TypeDescriptionExample
codeStringA unique, machine-readable identifier for the issue type.“css_big”
typeStringThe severity of the issue (error, warning, notice).“notice”
groupStringThe category the issue belongs to (e.g., links_v2, css).“css”
snippetObjectProvides concrete, actionable details about the issue.{…}

The snippet.value provides the specific evidence, such as a list of redirecting URLs or an oversized CSS file with its size.

Example Request

Copy
curl --location 'https://api.seranking.com/v1/site-audit/audits/issues?audit_id=700183831&url_id=50958380' \
--header 'Authorization: Token YOUR_API_KEY'

Example Response

A successful request returns a JSON object containing the page’s data and a list of its issues.

Copy
{
"url": "[https://www.vitality.co.uk/](https://www.vitality.co.uk/)",
"page_data": {
"h1": "Live longer with Vitality insurance",
"h2": "Health insurance",
"js": 6,
"css": 1,
"doc": 83,
"img": 21,
"lang": "en",
"cache": "no-cache, no-store",
"chars": 153843,
"title": "Vitality Insurance | Award-Winning Insurance Provider",
"words": 1621,
"ext_js": 4,
"h1_len": 35,
"h2_len": 16,
"robots": "index, follow",
"ext_doc": 12,
"h1_hash": "4c57f3fc38a26dcc202c11b8975f590e",
"inlinks": 922,
"js_size": 543728,
"css_size": 443163,
"encoding": "gzip",
"h1_count": 1,
"h2_count": 14,
"h3_count": 9,
"h4_count": 33,
"img_size": 700322,
"refpages": 921,
"canonical": "[https://www.vitality.co.uk/](https://www.vitality.co.uk/)",
"title_len": 53,
"html_ratio": 40,
"time_check": "2025-07-29 11:06:30",
"title_hash": "c33af508bc32002acac1e3a12606c626",
"description": "Vitality is a leading UK insurer offering health and life insurance. Get your quote today and unlock discounts and rewards from top brands.",
"total_links": 230,
"errors_count": 0,
"issues_count": 2,
"num_keywords": 48369,
"notices_count": 2,
"redirect_count": 5,
"redirect_links": 4,
"warnings_count": 0,
"description_len": 139,
"description_hash": "3bb8e0f3905c4b7203a8b7cae91f890b",
"traffic_forecast": 10716
},
"issues": [
{
"code": "extlinks3xx",
"type": "notice",
"group": "links_v2",
"snippet": {
"type": "urls",
"value": [
{
"status": "302",
"url": "[https://members.vitality.co.uk/my-points/confirm-an-activity](https://members.vitality.co.uk/my-points/confirm-an-activity)"
},
{
"status": "302",
"url": "[https://members.vitality.co.uk/](https://members.vitality.co.uk/)"
}
]
}
},
{
"code": "css_big",
"type": "notice",
"group": "css",
"snippet": {
"type": "urls",
"value": [
{
"status": "200",
"url": "[https://www.vitality.co.uk/dist/vds/css/presales.css?v=2025.6.30121236](https://www.vitality.co.uk/dist/vds/css/presales.css?v=2025.6.30121236)",
"size": "443163"
}
]
}
}
]
}

This endpoint returns a paginated list of every hyperlink (e.g., in <a> tags, canonicals) discovered across the entire site during the audit. It allows for a complete analysis of all internal and outbound links.

GET Request

The request should be made as a GET request with all parameters included in the query string.

Copy
curl --location 'https://api.seranking.com/v1/site-audit/audits/links?audit_id=700183831&page_type=all&limit=10&offset=0' \
--header 'Authorization: Token YOUR_API_KEY'

Request Parameters

ParameterTypeRequiredDefaultDescription
audit_idIntegerYesThe unique identifier of the audit.
page_typeStringNoallFilters links by type. Possible values: internal, external, all.
limitIntegerNoThe number of links to return in the list.
offsetIntegerNoThe starting position for the list of links.

Response Parameters

If successful, the server returns a JSON object containing the total count of links and an array of link objects.


arameter
Data TypeDescription
totalIntegerThe total number of links matching the filter criteria.
itemsArrayAn array of objects, each representing a discovered link.

Each object in the items array has the following structure:

ParameterData TypeDescriptionExample
urlStringThe destination URL of the link.“https://www.vitality.co.uk/”
idStringThe unique identifier for this specific link instance.“1153787496”
statusStringThe HTTP status code of the destination URL.“200”
typeStringThe type of the link (e.g., hyperlink, canonical).“hyperlink”
source_urlStringThe URL of the page where the link was discovered.“https://www.vitality.co.uk/advisers/”
source_noindexStringIndicates if the source page has a noindex directive (“1” for yes, “0” for no).“1”
nofollowStringIndicates if the link has a rel=”nofollow” attribute (“1” for yes, “0” for no).“0”
anchorStringThe visible, clickable text of the link.“Personal”
anchor_typeStringThe type of the anchor element (e.g., text, image).“text”

Example Request

Copy
curl --location 'https://api.seranking.com/v1/site-audit/audits/links?audit_id=700183831&page_type=all&limit=4&offset=0' \
--header 'Authorization: Token YOUR_API_KEY'

Example Response

A successful request returns a JSON object containing a list of all discovered links.

Copy
{
"total": 103624,
"items": [
{
"url": "[https://www.vitality.co.uk/](https://www.vitality.co.uk/)",
"id": "1153787496",
"status": "200",
"type": "hyperlink",
"source_url": "[https://www.vitality.co.uk/advisers/](https://www.vitality.co.uk/advisers/)",
"source_noindex": "1",
"nofollow": "0",
"alt": "",
"anchor_type": "text",
"anchor": "Personal",
"title": ""
},
{
"url": "[https://www.vitality.co.uk/](https://www.vitality.co.uk/)",
"id": "1153787624",
"status": "200",
"type": "hyperlink",
"source_url": "[https://www.vitality.co.uk/business/](https://www.vitality.co.uk/business/)",
"source_noindex": "0",
"nofollow": "0",
"alt": "",
"anchor_type": "text",
"anchor": "Personal",
"title": ""
},
{
"url": "[https://www.vitality.co.uk/](https://www.vitality.co.uk/)",
"id": "1153787774",
"status": "200",
"type": "hyperlink",
"source_url": "[https://www.vitality.co.uk/community/](https://www.vitality.co.uk/community/)",
"source_noindex": "0",
"nofollow": "0",
"alt": "",
"anchor_type": "text",
"anchor": "Personal",
"title": ""
},
{
"url": "[https://www.vitality.co.uk/](https://www.vitality.co.uk/)",
"id": "1153787908",
"status": "200",
"type": "hyperlink",
"source_url": "[https://www.vitality.co.uk/healthcare-providers/](https://www.vitality.co.uk/healthcare-providers/)",
"source_noindex": "0",
"nofollow": "0",
"alt": "",
"anchor_type": "text",
"anchor": "Personal",
"title": ""
}
]
}

Get audit history by date

This endpoint retrieves a historical snapshot of a specific audit run, providing the full context of that audit, including the settings used, domain data at the time, and a summary of all issues found.

GET Request

The request should be made as a GET request with all parameters included in the query string.

Copy
curl --location 'https://api.seranking.com/v1/site-audit/audits/history?audit_id=700183831&date=2025-07-29' \
--header 'Authorization: Token YOUR_API_KEY'

Request Parameters

ParameterTypeRequiredDefaultDescription
audit_idIntegerYesThe unique identifier of the audit.
dateStringYesThe specific date of the historical audit to retrieve (YYYY-MM-DD).

Response Parameters

If successful, the server returns a JSON object containing the complete historical data for the specified audit run.

ParameterData TypeDescription
audit_timeStringThe exact timestamp when the historical audit was completed.
domain_dataObjectAn object containing general data about the domain at the time of the audit (e.g., backlinks, indexed pages).
settingsObjectAn object detailing all the configuration settings that were used for this specific audit run.
pages_dataObjectAn object where each key is an issue code (e.g., title_duplicate) and the value is the number of pages affected by that issue.
totalsObjectAn object summarizing the final counts for the audit (total_pages, total_warnings, total_errors).

Example Request

Copy
curl --location 'https://api.seranking.com/v1/site-audit/audits/history?audit_id=700183831&date=2025-07-29' \
--header 'Authorization: Token YOUR_API_KEY'

Example Response

A successful request returns a JSON object containing the unique ID of the created audit.

Copy
{
    "audit_time": "2025-07-29 11:19:33",
    "domain_data": {
        "dt": 44,
        "domain": "www.vitality.co.uk",
        "backlinks": "212249",
        "index_google": "1380"
    },
    "settings": {
        "source_site": 1,
        "source_sitemap": 1,
        "max_pages": 1000,
        "max_depth": 10
    },
    "pages_data": {
        "css3xx": 1,
        "css_big": 880,
        "h1_long": 19,
        "http4xx": 28,
        "title_duplicate": 143,
        "description_duplicate": 169
    },
    "totals": {
        "total_pages": 1009,
        "total_warnings": 979,
        "total_errors": 346,
        "total_passed": 77
    },
    "version": "2.0"
}

Update Audit Title

This endpoint allows you to change the title of an existing website audit report.

PATCH Request

The request should be made as a PATCH request. The ID of the audit to be updated is passed as a query parameter, and the new title is sent in the JSON request body.

Copy
curl --location --request PATCH 'https://api.seranking.com/v1/site-audit/audits?audit_id=89263' \
--header 'Content-Type: application/json' \
--header 'Authorization: Token YOUR_API_KEY' \
--data '{
    "title": "New Example Audit Title"
}'

Request Parameters

Query Parameter

ParameterTypeRequiredDefaultDescription
audit_idIntegerYesThe unique identifier of the audit to update.

Body Parameter

ParameterTypeRequiredDefaultDescription
titleStringYesThe new title for the audit report. Max 300 characters.

Response Parameters

If successful, the server returns an HTTP 200 OK status code with an empty response body, confirming that the title has been updated.

Example Request

Copy
curl --location --request PATCH 'https://api.seranking.com/v1/site-audit/audits?audit_id=89263' \
--header 'Content-Type: application/json' \
--header 'Authorization: Token YOUR_API_KEY' \
--data '{
    "title": "New Title for Ananda Ioga Audit"
}'

Example Response

A successful request returns an empty response with a 200 OK status code.

Copy
[]

Delete Audit

This endpoint permanently deletes a specified website audit report and all of its associated data. This action cannot be undone.

DELETE Request

The request should be made as a DELETE request with the audit_id of the report to be deleted included in the query string.

Copy
curl --location --request DELETE 'https://api.seranking.com/v1/site-audit/audits?audit_id=89263' \
--header 'Authorization: Token YOUR_API_KEY'

Request Parameters

ParameterTypeRequiredDefaultDescription
audit_idIntegerYesThe unique identifier of the audit to delete.

Response

If successful, the server returns an HTTP 200 OK status code with an empty response body, confirming that the audit has been deleted.

Example Request

Copy
curl --location --request DELETE 'https://api.seranking.com/v1/site-audit/audits?audit_id=89263' \
--header 'Authorization: Token YOUR_API_KEY'

Example Response

A successful request returns an empty response with a 200 OK status code.

Copy
[]

Recheck Audit

These endpoints initiate a new crawl for a previously completed audit, using the same settings as the original run. This is useful for tracking changes and verifying that issues have been resolved.

⚠️ Cost Information: Rechecking an audit incurs the same cost as creating a new one.

  • Standard Audits cost 2 credits per crawled page.
  • Advanced Audits cost 20 credits per crawled page.

Recheck Standard Audit

Launches a new standard crawl for an existing audit.

Copy
POST /v1/site-audit/audits/recheck/standard

Recheck Advanced Audit

Launches a new advanced crawl with JavaScript rendering for an existing audit.

Copy
POST /v1/site-audit/audits/recheck/advanced

Request Parameters

ParameterTypeRequiredDefaultDescription
audit_idstringyesThe unique identifier of the audit to recheck. This is passed as a query parameter.

Response 

If successful, the server returns an HTTP 200 OK status code with an empty response body, confirming that the recheck has been initiated.

Example Request

Standard Recheck

Copy
curl --location --request POST 'https://api.seranking.com/v1/site-audit/audits/recheck/standard?audit_id=700237033' \
--header 'Authorization: Token YOUR_API_KEY'

Advanced Recheck

Copy
curl --location --request POST 'https://api.seranking.com/v1/site-audit/audits/recheck/advanced?audit_id=700237033' \
--header 'Authorization: Token YOUR_API_KEY'

Example Response

A successful request returns an empty response with a 200 OK status code.

Copy
[]

Learn how SE Ranking’s API can boost your SEO!

Hi! Meet our product expert, Alex.

He’ll walk you through the API and show you how to get the most out of it.

  • Enjoy a tailored demo on integrating rich, structured SEO data into your stack.
  • Pin down every tech detail live—auth, endpoints, rate limits, data formats.
  • Compare usage tiers and pricing so you can unlock maximum data value.

Request a free demo to see our tools and integrations in action

By clicking this button, you agree to SE Ranking’s Terms of Services and Privacy Policy.